U3Ch1L2_ The Need For Algorithms

Purpose: Students will see the relationship between writing code and designing algorithms.

Vocabulary: Algorithm / Program / Code

Lesson Plan Itinerary: Click Here!

Journal: Reflect – What did we do in the last class? What was the point of the lesson? (Lego: communication via human language vs. computer language (unambiguous.)

Journal: Guess - Algorithm/Code/Program (Problem...I have seen algorithm/code/program defined in various ways by different sources...including Code.org.)


Activity #1: Find Minimum Card Algorithm - You are going to pretend that you are a “Human Machine” that follows a process to find the lowest card in a row of 8 cards. (The goal in this activity is for the students to eventually create an algorithm or process to solve the problem of finding the lowest card.)


Activity2: “The Human Machine” Language - You are going to pretend that you are a “Human Machine”. One partner will place their hands on the cards, while the other partner will read the Example programs on the Handout.

Handout: “Human Machine Language - Read Handout Guidelines in class.

    1. Have one partner read the instructions in sequence starting at line 1, and the other partner act out each command as the human machine.
    2. Use the Code Reference in the handout to answer your questions and verify you’re interpreting the code correctly.
    3. Give a brief description of what the program does.

Ask Class to look at their first attempt to define Algorithm / Program / Code, and now refine their definitio

!!Example: Yesterday you developed a process to build a Lego structure. This process included a set of commands that the other group needed to follow in order to build the structure. An Algorithm is the Process. The Code was the detailed steps. The Program was how you

Note:
Different algorithms can be developed to solve the same problem and different code can be written to implement the same algorithm!!

Journal: Compare an Algorithm to a Protocol.